﻿namespace Kevin.Code.Generator.Infrastructure.Models
{
    /// <summary>
    /// id输入实体
    /// </summary>
    public class IdInput<T>
    {
        /// <summary>
        /// id
        /// </summary>
        public T Id { get; set; }
    }

    /// <summary>
    /// id、value输入实体
    /// </summary>
    /// <typeparam name="T1">id类型</typeparam>
    /// <typeparam name="T2">value类型</typeparam>
    public class IdValueInput<T1, T2> : IdInput<T1>
    {
        /// <summary>
        /// 值
        /// </summary>
        public T2 Value { get; set; }
    }

    /// <summary>
    /// id、值1、值2输入实体
    /// </summary>
    /// <typeparam name="T1">id类型</typeparam>
    /// <typeparam name="T2">值1类型</typeparam>
    /// <typeparam name="T3">值2类型</typeparam>
    public class IdTwoValueInput<T1, T2, T3> : IdInput<T1>
    {
        /// <summary>
        /// 值1
        /// </summary>
        public T2 Value1 { get; set; }

        /// <summary>
        /// 值2
        /// </summary>
        public T3 Value2 { get; set; }
    }
}
